import Vue from 'vue'
// 导入vue  从node_modules文件夹中导入
import App from './App.vue'
import router from './router'
// 路由  import router from './router/index.js'
import store from './store'
// vuex  import store from './store/index.js'

Vue.config.productionTip = false
Vue.config.keyCodes.f1 = 112


// ant
import Antd from 'ant-design-vue';
import 'ant-design-vue/dist/antd.less';

Vue.use(Antd);


// BS
import 'bootstrap/dist/css/bootstrap.css'
import 'bootstrap/dist/js/bootstrap.js'
// animate.css
import 'animate.css';

// 全局过滤器
// Vue.filter('过滤器名字',回调函数（data:管道符前面的内容或者上一个过滤器的返回的内容，format：传递的参数）)
Vue.filter('setMsg',function (data,format){
    console.log(data,format)
    // return '哈哈哈'
    return data.replace('TMD','***')
})
Vue.filter('setMsg1',function (data,format){
    console.log(data,format)
    // return '哈哈哈'
    // return data.replace('TMD','***')
})
// 全局自定义指令
// Vue.directive('自定义指令名字',{bind,inserted})
Vue.directive('color',{
    // el:指令所绑定的dom元素 binding:一个对象
    // bind：指令第一次绑定到元素时调用  虚拟dom
    bind(el,binding){
        // console.log(el)
        // console.log(binding)
        // 绑定的属性值 green
        // console.log(binding.value)
        el.style.color=binding.value
        el.focus()
    },
    // inserted 当元素渲染到界面上之后执行
    inserted(el){
        console.log(el)
        // el.focus()
    },
    // update  当元素有更新的时候执行
    update(el){
        console.log(el)
        console.log('update')
    }
})

new Vue({
// 4.将路由挂载到vue实例上
    router,
    store,
    render: h => h(App) //操作虚拟dom
}).$mount('#app') //控制区域